Modern computing devices are used for a wide variety of purposes, many of which involve data that is private, proprietary or sensitive to the user or to other entities. For example, devices such as smart phones are often used to store financial data such as account numbers, payment credentials, biometric data such as fingerprints, PINs and passwords. In addition, computing devices commonly store encryption keys and the like, for example, for playback of copy-protected media. Such data is valuable to users and to other entities such as software developers, enterprises, financial institutions and media owners and publishers.
Protection of sensitive data (in particular, against unauthorized access to such data) is important. Moreover, allowing for fast and convenient access to data for legitimate purposes by both users and software developers is also important for providing a broad feature set of devices. Unfortunately, existing approaches to management of secure data tend to be cumbersome and often have vulnerabilities.